//执棋方
function whoPlay(){
	if(player){
		$('#player').children(0).text("黑方");
	}else{
		$('#player').children(0).text("白方");
	}
}
//悔棋文本
function regretText(){
	$('#textBox').css("display","block");
	$('#text').text("您确定要悔棋吗？");
	move = false;
}
//认输文本
function giveUpText(){
	$('#textBox').css("display","block");
	$('#text').text("您确定要认输吗？");
	move = false;
}
//重开文本
function restartText(){
	$('#textBox').css("display","block");
	$('#text').text("您确定要重开吗？");
	move = false;
}
//赢家
function winer(player){
	if(player) player = "黑";
	else player = "白";
	$('#textBox').css("display","block");
	$('#text').text(player+"棋获胜");
	move = false;
}
//获取当前鼠标的坐标
function xy(e){
	var xx = e.offsetX;//相对于棋盘左上角的x坐标
	var yy = e.offsetY;//相对于棋盘左上角的y坐标
	x = Math.floor(xx/40);
	y = Math.floor(yy/40);
}
//悔棋
function regret(){
	//消除当前棋子
	ctx.strokeStyle = "#D2B48C";
	ctx.clearRect(x*40+4,y*40+4,32,32);
	ctx.stroke();
	//填补被抹去的棋盘
	ctx.beginPath();
	ctx.strokeStyle = "#d6d1d1";
	ctx.moveTo(20+x*40,20+y*40-16);
	ctx.lineTo(20+x*40,20+y*40+16);
	ctx.stroke();
	ctx.moveTo(20+x*40-16,20+y*40);
	ctx.lineTo(20+x*40+16,20+y*40);
	ctx.stroke();
	//记录当前节点的数组为0,当前下棋玩家不变
	box[x][y] = 0;
}
//清空棋盘
function cleanBoard(){
	regret();
	ctx.strokeStyle = "d2b48c";
	ctx.clearRect(0,0,600,600);
	ctx.stroke();
}
//清空棋盘数组数据
function cleanArray(){
	for(var i=0;i<15;i++){
		box[i] = [];
		for(var j=0;j<15;j++){
			box[i][j] = 0;
		}
	}
	move = true;
}
//绘制棋盘
function drawCheeseBoard(){
	ctx.strokeStyle = "#d6d1d1";
	for(var i=0;i<15;i++){
		ctx.moveTo(20+i*40,20);
		ctx.lineTo(20+i*40,580);//垂直方向画15根线，距离30px
		ctx.stroke();
		ctx.moveTo(20,20+i*40);
		ctx.lineTo(580,20+i*40);//水平方向画15根线，距离30px
		ctx.stroke();
	}
}
//画一个棋子
function drawOne(x,y,player){
	ctx.beginPath();
	ctx.arc(20+x*40,20+y*40,15,0,2*Math.PI);
	//棋子的渐变色效果
	var col = ctx.createRadialGradient(20+x*40,20+y*40,15,20+x*40,20+y*40,0);
	if(player){//如果player是true，那么是黑棋，先下
		col.addColorStop(0,"#0a0a0a");//黑棋
		col.addColorStop(1,"#636766");
	}else{
		col.addColorStop(0,"#d1d1d1");//白棋
		col.addColorStop(1,"#f9f9f9");
	}
	ctx.fillStyle = col;
	ctx.fill();
	ctx.closePath();
}
//判断棋局
function judge(x,y,player,box){
	var ch,cout=0;
	if(player) ch = 1;//如果是真，则判断是否为黑棋
	else ch = 2;//如果是假，则判断是否为白棋
	// console.log(box);
	var a = leftRight(x,y,box,ch);
	var b = upDown(x,y,box,ch);
	var c = leftUp(x,y,box,ch);
	var d = leftDown(x,y,box,ch);
	if(a||b||c||d) return true;
	else return false;
}
//判断左右方向
function leftRight(x,y,box,ch){
	var cout=0;
	for(var h=x;h<15;h++){
		if(box[h][y] == ch) cout++;
		else break;
	}
	for(var h=x;h>=0;h--){
		if(box[h][y] == ch) cout++;
		else break;
	}
	if(cout > 5) return true;
	else return false;
}
//判断上下方向
function upDown(x,y,box,ch){
	var cout=0;
	for(var s=y;s<15;s++){
		if(box[x][s] == ch) cout++;
		else break;
	}
	for(var s=y;s>=0;s--){
		if(box[x][s] == ch) cout++;
		else break;
	}
	if(cout > 5) return true;
	else return false;
}
//判断左上至右下
function leftUp(x,y,box,ch){
	var cout=0;
	for(var h=x,s=y;h<15&&s<15;h++,s++){
		if(box[h][s] == ch) cout++;
		else break;
	}
	for(var h=x,s=y;h>=0&&s>=0;h--,s--){
		if(box[h][s] == ch) cout++;
		else break;
	}
	if(cout > 5) return true;
	else return false;
}
//判断右上至左下
function leftDown(x,y,box,ch){
	var cout=0;
	for(var h=x,s=y;h<15&&s>=0;h++,s--){
		if(box[h][s] == ch) cout++;
		else break;
	}
	for(var h=x,s=y;h>0&&s<14;h--,s++){
		if(box[h][s] == ch) cout++;
		else break;
	}
	if(cout > 5) return true;
	else return false;
}